Add Nix flake definition for reproducible builds#265
Merged
DeusData merged 1 commit intoDeusData:mainfrom May 8, 2026
Merged
Conversation
Adds `flake.nix` to define how this package should be built on systems running [nix][nix-link]. Also commit the `flake.lock` file to pin the specific dependencies at build time. By default support aarch64 and x86_64 for macos and linux. Run the Make command directly because `cc` on Nix systems is a wrapper file and not a binary directly, so the `file` check in `scripts/build.sh` fails to identify the host architecture correctly. Include lib2git as an optional dev shell dependency since it's detected by `pkg-config` in the build script to link to `lib2git` if it exists at build time. [nix-link]: https://nixos.org/
81235a1 to
84c47d8
Compare
Owner
|
Thanks @josephvoss — clean, focused PR with proper supply-chain hygiene (pinned nixpkgs commit + narHash, no random fetchurl, only standard nixpkgs build inputs). Verified:
Two small follow-ups I'll either drive or accept later — not blockers:
Merging now. |
DeusData
added a commit
that referenced
this pull request
May 9, 2026
Resolved conflict in Makefile.cbm: keep both TEST_STACK_OVERFLOW_SRCS (from main, #217) and the new py_lsp test variables (TEST_SCOPE_SRCS, TEST_TYPE_REP_SRCS, TEST_PY_LSP_SRCS, TEST_PY_LSP_BENCH_SRCS, TEST_PY_LSP_STRESS_SRCS, TEST_PY_LSP_SCALE_SRCS) in ALL_TEST_SRCS. Other auto-merged files: internal/cbm/extract_defs.c (PR #279), tests/test_main.c (multiple suite registrations on each side). Brings in 28 commits from main since the branch was forked at 8fbdb0f (#207 thread safety): #208 decorator USAGE, #209 memory helpers, #210 refactor, #217 traversal stacks, #224 Svelte/Vue imports, #231 search_graph default limit, #243 path aliases, #249 GH Actions shell injection, #251 incremental destructive overwrite, #257 temporal properties, #265 Nix flake, #267-270/#289 dependabot, #273 Pine Script, #278 AUR docs, #279 INHERITS edges, #281 get_architecture wiring + follow-up, codeql revert.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
flake.nixto define how this package should be built on systems running nix. Also commit theflake.lockfile to pin the specific dependencies at build time.By default support aarch64 and x86_64 for macos and linux. Run the Make command directly because
ccon Nix systems is a wrapper file and not a binary directly, so thefilecheck inscripts/build.shfails to identify the host architecture correctly.Include lib2git as an optional dev shell dependency since it's detected by
pkg-configin the build script to link tolib2gitif it exists at build time.